home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 31
/
Amiga Format CD31 (1998-09-02)(Future Publishing)(GB)(Track 1 of 2)[!][issue 1998-10].iso
/
-seriously_amiga-
/
hardware
/
xfs
/
xfs.readme
< prev
next >
Wrap
Text File
|
1998-07-16
|
8KB
|
215 lines
Short: V2.16 Multi filesys+.device, win95+mac++
Uploader: msw@blackpool.ac.uk
Author: frans (francis swift)
Type: disk/misc
Replaces: xfs.lha
XFileSystem Version 2.16
Consisting of xfsd (a disk handler for your L: directory)
and fd.device / file.device (for your devs: directory),
and either mountlist.xfsd (for your devs: directory on WB2)
or FD0 etc (for your devs:DOSDrivers directory on WB3).
Current xfsd status:
readdir read write delete rename readpartition format
amiga + + + + + +
msdos / win95 + + + + + +
mac + + +
ql + + + + + ?
minix + + + + +
archimedes + +
cpm + +
1541 / 1581 + +
spectrum + +
Current fd.device status:
read write trackformat
Amiga tracks + + +
Diskspare 80/82 trk + + +
mfm (pc etc) + + +
Current file.device status:
read write format
flat files + +
dms files +
pctask/janus hardfiles + +
As you can see, there is currently no way to format disks, that
is write new filesystem info onto them. In fact, most of the code
to format disks on filesystems marked above as writeable exists,
it's just there's no way to select it at the moment.
From release V2.15, fd.device can be used to format disks,
that is, write out new tracks, so if you have a disk image file
you can write it out via DEV:fd.device to create a new disk.
See the xfs.guide 'usage' section for further info.
---------------------------- xfs216 -----------------------------
Fixed slight bug in clearing newly allocated directory blocks in
the PC disk handler. This led to bogus entries sometimes showing
up with weird names. There was only a one in sixteen chance of
this occuring, and it never occured on 1440k disks, so I'd never
seen it. Anyway, it should be fixed now.
Somehow the JAZX entry in DOSDrivers went missing. Now included.
The disk type numbers for Minix have changed to accommodate the
long file name variants:
MNX\0 Original Minix, 14 character names
MNX\1 Original Minix, 30 character names
MNX\2 Minix Version 2, 14 character names
MNX\3 Minix Version 2, 30 character names
Note that of the above only MNX\0 is supported at present.
Due to internal re-ordering of the individual handlers, the flag
bits got messed up. So I got rid of them. The new scheme uses the
control field string to enable/disable particular handlers. See
the explanation in the guide (usage > Workbench) or mount.xfsd.
There is a new utility called dospkt in the C directory, also
an upgraded version of the devio utility. These can be used to
perform instruct devices/handlers to do low/high level formatting
of disks (amongst other things). As an experiment I've enabled
the disk format code in the QL handler, so using devio/dospkt
you should be able to create valid QL disks. For the next release
I'll probably add PC/Minix disk formatting.
Note that the usage of devio has changed so if you are using it
in scripts you will need to change them.
--------------------------- xfs215 ------------------------------
Added support for 1581 disks (read only at present). These disks
sometimes have what are loosely referred to as 'partitions', really
fixed length directories. These are accessed just like directories.
You can now use fd.device to 'format' disks. That is, you can use
the DEV:fd.device,<unit>,<flags> pseudo file to write out disk
images of a particular format. So if you have a blank disk, read
it in using
copy DEV:fd.device,0 ram:temp
This will copy whatever disk is in drive 0 into file 'ram:temp'.
You can then write it out again using, for instance
copy ram:temp DEV:fd.device,0,880 ; if it is an amiga disk
copy ram:temp DEV:fd.device,0,720 ; for a pc / ql / minix disk
etc. See further explanations in 'usage > fd.device' in the guide.
To match up with the above, devd (the DEV: handler) has been
slightly amended, as has the devio utility. You will also find
a later version of the XL friendly fd.device in devs/storage.
While rewriting fd.device I took some time to examine the way
diskspare.device generated checksums (which was the reason for
fd.device not being able to write to these disks properly). I
also implemented an additional track scan to determine whether
a disk has more than 80 tracks. So now there should be full
support for all the different diskspare permutations. There is
also a new version of the mfm utility (for use with rawpatch)
to allow track checksum verification.
--------------------------- xfs214 ------------------------------
Completed MINIX handler. Of course there may be some hidden bugs
so it should be considered just a beta version for now.
Patched disk type into dl_DiskType. Only reason it hadn't been
done till now was I thought I'd already done it. So now you will
get sensible results from Stephan Rupprecht's Info program.
Anyway, it gives me an excuse to explain the disk types that
are returned.
Amiga DOS\0
DOS\1 FFS
DOS\2 Int
DOS\3 Int FFS
DOS\4 DC
DOS\5 DC FFS
MSDOS/W95 MSD\0
MAC MAC\0
Minix MNX\1 (and later maybe MNX\2)
QL QL5A 720k (and ED disks)
QL5B 1440k
Spectrum ZXS\0 Disciple
ZXS\1 UniDos
ZXS\2 SamDos
ZXS\4 Opus (180k)
Archimedes ARMD
ARME
CP/M CPM\2 (and later ZXS\3 for Plus3Dos)
C64 1541 (and later 1581)
These will (eventually, NOT YET) be the dos types passed to the
Format() command to select the file system.
Also, the file.device has been updated to allow it to work better
with devd (DEV:) so that you get the chance to select a file
before the DEV: device asks if there's a disk (file) in the 'drive'.
Now that I have some 1581 disks to experiment with I should be
able to add handling of these to xfs. Since these disks use
side skewing (quick explanation - the top is on the bottom), I
will need to modify fd.device to accept this format. Also, although
the physical sectors are 512 bytes, the logical sectors are only
256 bytes, which will make sector allocation complicated, so
for the moment support will be read only.
Finally I tidied up some clean-up routines so some random crashes
on removal of disks should disappear.
--------------------------- xfs213 ------------------------------
Added a couple of extra disk types to existing handler modules,
specifically Archimedes D type disks, and Spectrum 180k (Opus
Discovery) type disks. Note that both use unusual sector sizes,
the Archimedes D using 1024 byte sectors, and the Spectrum 180k
disks using 256 byte sectors (it's also 40 track single sided!).
Luckily fd.device sorts all this out transparently.
One more technical point. Whenever a disk is recognised by xfsd
the disk dos type is now written into de_DosType in the environment
table of the device entry in the dos list. This is to allow
anyone using the Info() call (which xfsd implements like most
handlers by returning ID_DOS_DISK in id_DiskType for disks it
recognises) to access the true disk type.
Updated crc utility to fix a slight bug.
There's a slight change to the flags setting in the mountlists,
which should be backwards compatible, see mount.xfsd.
Up till this release it was possible to open directories as if
they were files. This was a side effect of the internal
implementation which took advantage of the file-like structure
of directories in certain filesystems (QDOS,MSDOS,RISCOS etc).
I left this in so it would be possible to write external
utilities to access filesystem-specific information that would
otherwise be inaccessible via xfsd. Unfortunately, there are
too many badly written programs out there that, when given no
file name on the command line, open the empty string by mistake.
Of course, this means the current directory, so they get a
'wrong type' error. With xfsd, they would get no error, and
depending on the way the filesystem sets the file size for the
directory, may try to read the whole disk into memory, or 4GB,
or any random number. Anyway I've disallowed this again.